

// 1.引入基础模块
import {isLogin}  from "@/utils/tip.js"

// 2.动态设置请求地址
let URL = ""
if(process.env.NODE_ENV == "development"){
	// 本地开发环境
	// URL = "http://localhost:3000"
	URL = "http://api.aslegou.top"
}else{
	// 线上正式的生成环境
	URL = "http://api.aslegou.top"
}

// 3.按需导出地址
export {URL};


/**
 * 4.定义网络请求方法并默认导出
 * 	options:{
		url:请求地址,
		data:{请求数据},
		method:请求方法 get | post（restfull风格）,
		header:{请求头}
	}
 */ 
export  default (options)=>{
	// 组装请求地址：
	let url = URL+'/api/'+options.url
	return new Promise((resolve,reject)=>{
		uni.request({
			url,
			method:options.method || 'get',
			data:options.data || {},
			header:options.header || {
				"content-type":"application/json",
				"authorization":uni.getStorageSync('token') || ""
			},
			success:res=>{
				// 根据后端返回的不同状态码进行区别处理
				let code = res.data.code;
				if(code == 200){
					// 200代表本次操作成功
					resolve(res.data)
				}else if(code == 403){
					// 403 登录过期 访问后端地址不对
					uni.removeStorageSync('userInfo')
					uni.removeStorageSync('token')
					// 提示登录
					isLogin()
					// 返回错误提示信息
					reject(res.data)
				} else if(code ==500){
					// 请求参数异常 返回错误提示信息
					reject(res.data)
				}
			},
			fail:err=>reject(err)
		})
	})
}


